//Definition class - Figure.h

#ifndef Figure_H
#define Figure_H

#include "Pen.h"
#include "Lista.h"

#include <Classes.hpp>
#include <gl\gl.h>
#include <gl\glu.h>

/*
 * This class is basically a reminiscence of an initial situation. Due to some
 * problems with the inheritance we consider to design a new class architecture,
 * where the obstacles were stored in a non-children class called Figure. This
 * could be changed in a near future.
 *
 * What we basically do here is to declare the circles which are gonna be used
 * in the class Ball. There are a few redundant attributes, pending of being
 * optimized.
 */

typedef enum {Circle} TType;

class Figure{
   protected:
      Lista<PV>* vertexList;
      TType  type;
      PV center;
      float radio;

   public :

      Figure(  );
      Figure( TType t );
      Lista<PV>* getVertex(  );
      TType getType(  );
      PV getCenter(  );
      float getRadio(  );

      void setRadio( float r );
      void setType( TType type );
      void setCenter( float x , float y );
      void draw(  );
   };

#endif
